package task4;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class Copymp4 {
    public static void main(String[] args){

      /** BufferedInputStream bis=new BufferedInputStream(new FileInputStream("1.mp4"));
        BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream("C:\\1.mp4"));
        byte[] bys=new byte[1024];
        int len=0;
        while ((len=bis.read(bys))!=-1){
            bos.write(bys,0,len);
        }
        bos.close();
        bis.close();*/
      BufferedInputStream bis=null;
      BufferedOutputStream bos=null;
      try {
        //1、创建对象缓冲流对象
       bis=new BufferedInputStream(new FileInputStream("1.mp4"));
       bos=new BufferedOutputStream(new FileOutputStream("C:\\美女.mp4"));
      //2、拷贝：从源文件读取数据，写入目的文件
        //字节缓冲流一次读写一个字节数组
        //定义：一次读取的字节数组
        byte[] bys=new byte[1024];
      //定义：读取的字节数
        int len=0;
        //循环条件：读取的字节数不为-1，则表示还有数据（没有到流的末尾）
        while ((len=bis.read(bys))!=-1){
          bos.write(bys,0,len);
        }

      } catch (Exception e){
        //出现异常后的处理，输出异常信息
        System.out.println(e.getMessage());
      }finally {
        //无论如何都要执行的代码
        if(bis!=null){
          try {
            bis.close();
          } catch (IOException e) {
            e.printStackTrace();
          }
        }
        if(bos!=null){
          try {
            bos.close();
          } catch (IOException e) {
            e.printStackTrace();
          }
        }
      }
    }
}
